package pe.edu.upc.dew.grupo04.web;

import java.io.IOException;
import java.util.List;

import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.springframework.web.context.support.WebApplicationContextUtils;
import pe.edu.upc.dew.grupo04.dao.UsuarioDao;
import pe.edu.upc.dew.grupo04.model.Usuario;
import pe.edu.upc.dew.grupo04.service.UsuarioService;

public class UsuarioServlet extends HttpServlet implements UsuarioService {

	private static final long serialVersionUID = 1L;
	private UsuarioService usuarioService;

	@Override
	public void init(ServletConfig config) throws ServletException {
		// Integracion de Servlets con Spring
		this.usuarioService = WebApplicationContextUtils
				.getWebApplicationContext(config.getServletContext()).getBean(
						"usuarioService", UsuarioService.class);
	}

	/**
	 * @see HttpServlet#HttpServlet()
	 */
	public UsuarioServlet() {
		super();
		// TODO Auto-generated constructor stub
	}

	@Override
	public void setUsuarioDao(UsuarioDao usuarioDao) {
		// TODO Auto-generated method stub

	}

	@Override
	public void crearUsuario(Usuario usuario) {
		// TODO Auto-generated method stub

	}

	@Override
	public Usuario getUsuarioPorCodigo(int codUsuario) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public List<Usuario> getUsuarios() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public void updateUsuario(Usuario usuario) {
		// TODO Auto-generated method stub

	}

	@Override
	public void eliminarUsuario(int codUsuario) {
		// TODO Auto-generated method stub

	}

	@Override
	public Usuario getUsuarioPorUsername(String username) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public Usuario validar(String username, String password) {
		// TODO Auto-generated method stub
		return null;
	}

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doGet(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doPost(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		try {

			Usuario usuario = new Usuario();
			usuario.setCodUsuario(Integer.parseInt(request
					.getParameter("codUsuario")));
			usuario.setNombre(request.getParameter("nombre"));
			usuario.setApellido(request.getParameter("apellido"));
			usuario.setEdad(Integer.parseInt(request.getParameter("edad")));
			usuario.setEmail(request.getParameter("email"));
			usuario.setTelefono(request.getParameter("telefono"));
			usuario.setDni(request.getParameter("dni"));
			usuario.setCargo(request.getParameter("cargo"));
			usuario.setUsername(request.getParameter("username"));
			usuario.setPassword(request.getParameter("password"));
			usuarioService.crearUsuario(usuario);
			request.getRequestDispatcher("usuario.jsp").forward(request,
					response);
		} catch (Exception e) {
			String Cadena = " Existieron algunos Errores : Error" + e.getMessage();
			request.setAttribute("Cadena", Cadena);				
			request.getRequestDispatcher("pelicula.jsp").forward(request,
					response);
		}

	}

}
